package define

const (
	// for host
	NodeObject = `node`

	// for instance
	InstanceTypeResourceSet = "ResourceSet"
	InstanceTypePodSet      = "PodSet"
	InstanceTypePod         = "Pod"
	InstanceTypeContainer   = "Container"
)

type NodeInfo struct {
	HostName string `json:"hostName" yaml:"hostName"`
	HostIP   string `json:"hostIp" yaml:"hostIp"`
}

type ContainerInfo struct {
	ContainerId   string            `json:"containerId" yaml:"containerId"`
	ContainerName string            `json:"containerName" yaml:"containerName"`
	ImageTag      string            `json:"imageTag" yaml:"imageTag"`
	Runtime       string            `json:"runtime" yaml:"runtime"`
	Workdir       string            `json:"workdir" yaml:"workdir"`
	Envs          map[string]string `json:"envs" yaml:"envs"`
	Ports         map[string]string `json:"ports" yaml:"ports"`
	Mounts        map[string]string `json:"mounts" yaml:"mounts"`
	Cmds          []string          `json:"cmds" yaml:"cmds"`
}

type PodInfo struct {
	ConfigYaml string `json:"config_yaml" yaml:"config_yaml"`
}

type HostInfo struct {
	HostName string `json:"hostName" yaml:"hostName"`
	HostIP   string `json:"hostIp" yaml:"hostIp"`
	HostMac  string `json:"hostMac" yaml:"hostMac"`
	CPUCores string `json:"cpuCores" yaml:"cpuCores"`
	MemSize  string `json:"memSize" yaml:"memSize"`
}
